package com.mastercard.assets.jpa;

import java.io.Serializable;
import javax.persistence.*;
import java.sql.Timestamp;
import java.util.Date;


/**
 * The persistent class for the tbl_alerta_usuario database table.
 * 
 */
@Entity
@Table(name="tbl_alerta_usuario")
public class TblAlertaUsuario implements Serializable {
	private static final long serialVersionUID = 1L;
	private int cveAlertaUsuario;
	private Timestamp fechaAlta;
	private Date fechaEjecutada;
	private Date fechaLimite;
	private Date fechaVista;
	private int leida;
	private String nombre;
	private byte status;
	private String texto;
	private TblUsuario tblUsuario;
	private TblAlerta tblAlerta;
        private TblNotificacion tblNotificacion;
        private TblCuenta tblCuenta ;

    public TblAlertaUsuario() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(name="cve_alerta_usuario", unique=true, nullable=false)
	public int getCveAlertaUsuario() {
		return this.cveAlertaUsuario;
	}

	public void setCveAlertaUsuario(int cveAlertaUsuario) {
		this.cveAlertaUsuario = cveAlertaUsuario;
	}


	@Column(name="fecha_alta", nullable=false)
	public Timestamp getFechaAlta() {
		return this.fechaAlta;
	}

	public void setFechaAlta(Timestamp fechaAlta) {
		this.fechaAlta = fechaAlta;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="fecha_ejecutada", nullable=false)
	public Date getFechaEjecutada() {
		return this.fechaEjecutada;
	}

	public void setFechaEjecutada(Date fechaEjecutada) {
		this.fechaEjecutada = fechaEjecutada;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="fecha_limite", nullable=false)
	public Date getFechaLimite() {
		return this.fechaLimite;
	}

	public void setFechaLimite(Date fechaLimite) {
		this.fechaLimite = fechaLimite;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="fecha_vista", nullable=false)
	public Date getFechaVista() {
		return this.fechaVista;
	}

	public void setFechaVista(Date fechaVista) {
		this.fechaVista = fechaVista;
	}


	@Column(nullable=false)
	public int getLeida() {
		return this.leida;
	}

	public void setLeida(int leida) {
		this.leida = leida;
	}


	@Column(nullable=false, length=255)
	public String getNombre() {
		return this.nombre;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}


	@Column(nullable=false)
	public byte getStatus() {
		return this.status;
	}

	public void setStatus(byte status) {
		this.status = status;
	}


	@Column(nullable=false, length=2048)
	public String getTexto() {
		return this.texto;
	}

	public void setTexto(String texto) {
		this.texto = texto;
	}


	//bi-directional many-to-one association to TblUsuario
    @ManyToOne
	@JoinColumn(name="cve_usuario", nullable=false)
	public TblUsuario getTblUsuario() {
		return this.tblUsuario;
	}

	public void setTblUsuario(TblUsuario tblUsuario) {
		this.tblUsuario = tblUsuario;
	}
	

	//bi-directional many-to-one association to TblAlerta
    @ManyToOne
	@JoinColumn(name="cve_alerta", nullable=false)
	public TblAlerta getTblAlerta() {
		return this.tblAlerta;
	}

	public void setTblAlerta(TblAlerta tblAlerta) {
		this.tblAlerta = tblAlerta;
	}
        
        //bi-directional many-to-one association to TblNotificacion
    @ManyToOne
	@JoinColumn(name="cve_notificacion", nullable=false)
	public TblNotificacion getTblNotificacion() {
		return this.tblNotificacion;
	}

	public void setTblNotificacion(TblNotificacion tblNotificacion) {
		this.tblNotificacion = tblNotificacion;
	}
        
        // bi-directional many-to-one association to TblCeunta
        @ManyToOne
        @JoinColumn(name="cve_cuenta", nullable=false)
        public TblCuenta getTblCuenta() {
            return this.tblCuenta;
        }
        
        public void setTblCuenta(TblCuenta tblCuenta) {
            this.tblCuenta = tblCuenta;
        }
        	
}